﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

namespace MetaCollection.ContentService.Http
{
	public enum PropertyRequestType
	{
		/// <summary>
		/// Not a Property Request Type
		/// </summary>
		None,
		/// <summary>
		/// Request particular property values, by naming the properties desired within the 'prop'
		/// element (the ordering of properties in here MAY be ignored by the server)
		/// </summary>
		NamedProperties,
		/// <summary>
		/// Request a list of names of all the properties defined on the resource, by using the
		/// 'propname' element.
		/// </summary>
		PropertyNames,
		/// <summary>
		/// Request property values for those properties defined in this specification (at a minimum)
		/// plus dead properties, by using the 'allprop' element (the 'include' element can be used with
		/// 'allprop' to instruct the server to also include additional live properties that may not have
		/// been returned otherwise)
		/// 
		/// The values of the properties should be returned unless they are expensive to calculate.
		/// </summary>
		/// <remarks>
		/// * A client may choose not to submit a request body. An empty PROPFIND request body MUST
		/// be treated as if it were an 'allprop' request.
		/// * Expensive to calculate properties can be returned as name only.  For the value of these
		/// properties the client will issues a named property request for the property.
		/// </remarks>
		AllProperties
	}
}
